﻿//1679. K 和数对的最大数目
//给你一个整数数组 nums 和一个整数 k 。
//每一步操作中，你需要从数组中选出和为 k 的两个整数，并将它们移出数组。
//返回你可以对数组执行的最大操作数。


class Solution {
public:
    int maxOperations(vector<int>& nums, int k)
    {
        int ans = 0;
        unordered_map<int, int> cnt;
        for (auto x : nums)
        {
            int y = k - x;
            if (cnt[y] > 0)
            {
                cnt[y]--;
                ans++;
            }
            else
            {
                cnt[x]++;
            }
        }
        return ans;
    }
};